package cn.iocoder.yudao.module.written.exam.controller.admin.userwrittenexamrecordsdetail.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;

import javax.validation.constraints.*;
import java.time.LocalDateTime;

@Schema(description = "管理后台 - 笔试记录详情新增/修改 Request VO")
@Data
public class UserWrittenExamRecordsDetailSaveReqVO {

    @Schema(description = "自增id", requiredMode = Schema.RequiredMode.REQUIRED, example = "25831")
    private Long id;

    @Schema(description = "用户id", example = "17569")
    private Long userId;

    @Schema(description = "笔试记录id", example = "25706")
    private Long recordsId;

    @Schema(description = "消息id", example = "19213")
    private String messageId;

    @Schema(description = "文件id，多个文件id用英文逗号隔开")
    private String fileIds;

    @Schema(description = "笔试类型", example = "1")
    private Integer examType;

    @Schema(description = "职位分类id", example = "16627")
    private Long jobCategoriesId;

    @Schema(description = "职位分类名称", example = "王五")
    private String jobCategoriesName;

    @Schema(description = "专家id", example = "16492")
    private Long expertId;

    @Schema(description = "专家称号", example = "张三")
    private String expertName;

    @Schema(description = "消耗积分", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotNull(message = "消耗积分不能为空")
    private Integer consumedPoints;

    @Schema(description = "试题类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
    @NotNull(message = "试题类型不能为空")
    private Integer questionType;

    @Schema(description = "文件URL，多个文件URL用英文逗号隔开")
    private String fileUrls;

    @Schema(description = "文本题目")
    private String questionText;

    @Schema(description = "试题答案")
    private String questionAnswer;

    @Schema(description = "强制滚动")
    private Integer forceScroll;

    @Schema(description = "双栏模式")
    private Integer twoColumnMode;

    @Schema(description = "代码详细注释")
    private Integer codeDetailComments;

    @Schema(description = "上下文分析")
    private Integer contextAnalysis;

    @Schema(description = "播放答案")
    private Integer playAnswer;

    @Schema(description = "开始时间")
    private LocalDateTime startTime;

}